1. Field of the Invention
Embodiments relate to a method of conveying a location information representing a physical location of a first communication device from the first communication device to a server. Embodiments further relate to a computer program product for executing such a method and to the first communication device for conveying the location information.
2. Background of the Related Art
A location information provided in an element of a device such as a communication device, e.g. a mobile or an IP phone, a PDA (Personal Digital Assistant), a tablet PC, laptop or a desktop PC, is defined to represent the physical location of the device. This location information may be used by emergency services as NG911 (Next Generation 9-1-1) or NG112 (Next Generation 1-1-2) to locate the device that initiated an emergency communication request. Such a location information may be expressed as a civic location, e.g. a postal address and/or as geospatial coordinates, e.g. a map location. The physical location of the device is required in order for a server, such as a telephony server, to locate a suitable emergency services number to be used to initiate a communication connection by placing a call (routing). When using the Session Initiation Protocol (SIP), it is possible for a communication device to convey its location information to the telephony server by sending a SIP request message to the server to request the initiation of a communication connection, i.e. a call, to the server.
Instead of a communication connection being negotiated and established between two parties, the communication device and the server, it is also possible to initiate a communication connection between a first communication device and a second communication device controlled by a third communication device. Typically this is unlikely to be a device that is involved in media communication but rather it is normally an entity that is dedicated to control functions and acts via a server that provides, e.g., SIP messaging. An example is a call centre application or a web server that presents a web page with a ‘click to dial’ option. As such the third communication device may by described as a CTI (Computer Telephony Integration) server that may be hosted as a stand-alone entity or embedded in another device such as a communication device. In the traditional telephony context, a Third Party Call Control, abbreviated as 3PCC, allows one entity, e.g. a user of the third communication device, to setup and manage a communication connection, a communication relationship or a telephone call between two or more other parties, e.g. between the first and second communication devices. Third Party Call Control is often used where an operator may create a call that connects two participants (of the first and second communication devices). The operator may be independent of the resulting call or be a participant in the call via the first, or second, communication device. 3PCC may also be used for conferencing services.
When using the SIP protocol, many SIP services are possible through 3PCC. These include the traditional ones on the PSTN (Public Switched Telephone Network) but also more recent ones such as Click-to-Dial, allowing a user to click on a webpage to speak to a customer service representative. The web server may then create a call between the user and the customer service representative. In this case, the user may operate the third communication device as the Third Party Call Controlling entity and the first communication device in form of the user's telephone at the same time. Such a 3PCC call may be established between two phones, a phone and an IP host, or between two IP hosts.
According to the standard RFC 3725 (Network Working Group, Request for Comments, April 2004), the communication connection in form of a call is generated by a Back-to-Back User Agent (B2BUA), which may be embodied in a server or SIP server at a request of a third party that is remote from the first communication device that the call is to be made from to a second communication device. Common CTI mechanisms that could be used by the remote party to request the SIP server to generate a call include TAPI (Telephony Application Programming Interface) and CSTA (Computer-Supported Telecommunications Applications).
According to the 3PCC scenario as defined in RFC 3725, at first the B2BUA sends a SIP invite request to the first communication device. Although this is an incoming SIP call request, the first communication device will recognize the SIP invite request as a 3PCC call and automatically answer the SIP invite request. Secondly, on being answered by the first communication device, the B2BUA completes the call between the first communication device and a second communication device by sending a SIP invite request to the destination in form of the second communication device as requested by the user of the third communication device. In this context, the standard according to RFC 6442 (Internet Engineering Task Force (IETF), Request for Comments, December 2011) for location conveyance which is not specific to the use of location information for emergency calls but allows for any possible use of location information by the location consumer (e.g. location tracking), does not provide a mechanism for a communication device to participate in a logically outgoing call via an incoming SIP invite request that is generated by a Third Party Call Control mechanism. The standardized approach only allows for location information which may be in the form of SIP headers and a PIDF-LO body (Presence Information Data Format-Location Object) being provided in SIP request messages but not in SIP responses.
The provision of location information only in SIP request messages and not in SIP responses generates a problem if a user initiates an emergency call via a CTI application where the SIP server utilizes 3PCC to generate the call. Although the user is clearly present at the first communication device since the call media is still connected via the device, the device is unable to convey its location since it is only able to respond to the SIP invite request coming in from the SIP server. In a SIP VoIP (Voice over Internet Protocol) environment, call media is defined as RTP (Real-Time Transport Protocol) packets that stream between the communication devices which may convey audio and/or video data where the SIP messaging is used to control the streaming of the RTP packets. Call media may hence be referred to as the payload of the respective communication device.
A possible approach to avoid this problem in the use of 3PCC to trigger an outgoing call is by modifying the first communication device to use a SIP mechanism to pass on a proprietary event package such as uaCSTA (user agent Computer Supported Telephony Applications) to request the first communication device to originate the call by itself instead by the SIP server or to use a non-SIP mechanism, e.g. HTTP (Hyper Text Transfer Protocol) to request the first communication device to originate the call to the second communication device. Another way to avoid the problem is to treat a location-aware communication device as being location-unaware leading to the location information to be provided by the server or by some other means. This alternative approach to the problem may not be as accurate as a location information conveyed by the communication device itself, especially if the device is a mobile device. A further alternative solution to the problem may be the use of the SIP request once the call is connected between the first and second communication devices to convey the location information of the first communication device to the second communication device. However, this may not be acceptable by some location consumer endpoints which require the location information to be provided with an incoming call to be presented.